在安卓上部署服务器 – 部署脚本和博客

在进行完手机端应用配置和内网穿透平台ngrok配置之后,进行博客的部署介绍,以开源博客系统Blog_mini为例。

本系列其他文章:

1.在安卓上部署服务器
2.在安卓上部署服务器 – 应用程序的配置
3.在安卓上部署服务器 – 解决内网穿透问题
4.在安卓上部署服务器 – 部署脚本和博客

到这里我就不多解释了,这里就看自己能做出什么样子的博客来了,下面转载自 ZKeeer’s Blog–在安卓上部署服务器 – 部署脚本和博客
0.说明

本文只介绍最简单的配置,详细配置见作者博客。

这里使用的操作系统为:Ubuntu 15.10,理论上,只要操作系统上安装的Python版本为2.6.x或2.7.x,都可以成功部署Blog_mini。

1.获取Blog_mini源代码

有以下两种方式可以获取Blog_mini的源代码:

=>通过git的方式

=>通过Blog_mini项目主页下载

下载完成后,将其解压缩并传到Ubuntu操作系统中即可

2.安装python和pip

执行下面的命令安装即可:

ZKeeer@localhost:~/project/Blog_mini$ sudo apt-get install python

ZKeeer@localhost:~/project/Blog_mini$ sudo apt-get install python-pip

3.安装virtualenv

执行下面的命令安装即可:

ZKeeer@localhost:~/project/Blog_mini$ sudo apt-get install virtualenv

如果上面的命令说找不到virtualenv的,就使用下面的命令:

ZKeeer@localhost:~/project/Blog_mini$ sudo apt-get install python-virtualenv

4.创建虚拟环境venv

在Blog_mini目录下执行下面的命令:

ZKeeer@localhost:~/project/Blog_mini$ virtualenv venv

Running virtualenv with interpreter /usr/bin/python2

New python executable in venv/bin/python2

Also creating executable in venv/bin/python

Installing setuptools, pip…done.

可以在Blog_mini下看到生成了一个venv目录:

ZKeeer@localhost:~/project/Blog_mini$ ls

app LICENSE migrations README.md requirements.txt

config.py manage.py Procfile requirements venv

5.激活虚拟环境venv

在Blog_mini目录下:

ZKeeer@localhost:~/project/Blog_mini$ source venv/bin/activate

(venv)ZKeeer@localhost:~/project/Blog_mini$

6.安装Blog_mini需求文件

执行如下命令:

(venv)ZKeeer@localhost:~/project/Blog_mini$ pip install -r requirements/common.txt

因为这里要安装Blog_mini所需的一些扩展包,所以需要一定时间,当然如果网络良好的话,很快就可以安装完成。

来看这一步,除了数据库的配置以外,Blog_mini的全部需求环境已经搭建好了,接下来要完成下面的两个任何之一:

=>使用sqlite作为默认数据库来运行Blog_mini

=>使用MySQL作为默认数据库来运行Blog_mini

数据库的使用只需要使用其中一种即可。

为了测试,选用了sqlite,其他详细配置参考作者博客

7.使用sqlite作为默认数据库来运行Blog_mini

Python本身就自带了sqlite数据库,因此如果你要使用sqlite来作为默认数据库,你不需要做任何配置。

接下来要做的就是运行Blog_mini了。

生成Blog_mini所需要的系统默认数据,请在Blog_mini目录下执行下面的命令:

(venv)ZKeeer@localhost:~/project/Blog_mini$ python manage.py deploy product

INFO [alembic.runtime.migration] Context impl SQLiteImpl.

INFO [alembic.runtime.migration] Will assume non-transactional DDL.

INFO [alembic.runtime.migration] Running upgrade -> 051691f120e6, fit to MySQL

如果出现上面的提示就说明成功了!对于最后面出现的’fit to MySQL’大家不用觉得疑惑,这只是当时的一个备注,用来注明后面你要使用MySQL也是可以的,没有太大的意义。

运行Blog_mini:

(venv)ZKeeer@localhost:~/project/Blog_mini$ gunicorn manage:app

[2016-03-08 11:49:11 +0000] [7189] [INFO] Starting gunicorn 19.4.5

[2016-03-08 11:49:11 +0000] [7189] [INFO] Listening at: http://127.0.0.1:8000 (7189)

[2016-03-08 11:49:11 +0000] [7189] [INFO] Using worker: sync

[2016-03-08 11:49:11 +0000] [7194] [INFO] Booting worker with pid: 7194

上面的提示就说明Blog_mini已经成功运行了!不过这样的运行方式只能在本机以8000端口访问,如果你的Ubuntu操作系统本身没有GUI界面的话,你在本机也没有办法访问,所以我们可以用下面的方式运行。

以80端口运行Blog_mini:

(venv)ZKeeer@localhost:~/project/Blog_mini$ gunicorn -b 0.0.0.0:80 manage:app

[2016-03-08 11:50:43 +0000] [7202] [INFO] Starting gunicorn 19.4.5

[2016-03-08 11:50:43 +0000] [7202] [INFO] Listening at: http://0.0.0.0:80 (7202)

[2016-03-08 11:50:43 +0000] [7202] [INFO] Using worker: sync

[2016-03-08 11:50:43 +0000] [7207] [INFO] Booting worker with pid: 7207

不过,如果无法访问的话,那可能是防火墙的问题,你可以先把防火墙关掉:

ZKeeer@localhost:~$ sudo ufw disable

[sudo] ZKeeer 的密码:

到了这一步,你已经是成功地把Blog_mini的服务器部署好了。

Blog_mini支持后台管理(在主页底栏有’后台管理’登陆链接,点击即可进入登陆页面),下面是Blog_mini管理后台的默认账号密码:

账号:blog_mini@163.com

密码:blog_mini

提示:在部署完Blog_mini后,里面是没有任何数据的,如果你需要一定的数据来测试Blog_mini的功能,可以在完成上面的操作后执行下面的命令:

(venv)xpleaf@leaf:~/project/Blog_mini$ python manage.py deploy test_data

这将会生成100篇博文和700条评论,同时还有博文分类和系统导航,以方便你验证Blog_mini的功能。

参考文章及资料:

代码地址:xpleaf/Blog_mini

部署地址:Blog_mini完整部署文档 – 香飘叶子 – 51CTO技术博客

试用地址:115.159.72.250:8080

帐号:blog_mini@163.com

密码:blog_mini

作者51cto博客:香飘叶子 – 51CTO技术博客 – 领先的IT技术博客

作者个人博客网站:http://www.xpleaf.com

  摘录自 ZKeeer’s Blog